Prior art includes U.S. Pat. No. 5,363,175, assigned to the same assignee as the present invention covering distributed job scheduling of modular components. Also pending U.S. Ser. No. 280,978 covers a controller interrogating processors for operational timing data for configuring the controller to operate in accordance with the operational timing of the processors.
Traditionally, representing and controlling a machine was based upon certain assumptions about the interconnection of the machine. In particular, the assumption was that a marker module was at the center, with feeders upstream and finishers downstream from the marker with the arrangement being essentially linear. Any deviations from this linear interconnection in the prior art were not possible, generally, without substantial redesign of hardware and software.
This type of product development usually began with a core machine, typically the marking engine, with modules were tailored to work with the core machine. This approach produced tightly integrated machines composed of modules that were functionally interdependent. The products may have been physically modular (easily separable for transportation) but they were not easily reconfigured nor could they typically be used on other products without extensive revision of the control software. With this type of development, it was difficult to use modules with any product other than the product for which they were developed. In addition to the physical considerations, (for example, paper path heights, locations etc.) the modules generally have dependencies on other parts of the product, such as user interfaces, schedulers, and paper path control.
For example, a machine module to staple a set of copy sheets was very specific to the machine hardware and software architecture. This meant that the set of copy sheets delivered to the stapler must be in a very well defined orientation and format. In this configuration, only one manner of stapling was accommodated. However, with various stapling machines available from various vendors, more information is needed from the various staplers to determine if a particular operation can be completed.
That is, one machine might receive the set face up, staple it, and deliver the set face down. Another machine might do the same but with the output face up, another machine might not take sets in but only separate sheets. Trying to describe all possible permutations using Document Printing Application (DPA) ISO 10175, styled key words quickly becomes unmanageable. Thus, there has been a need to create modules that are capable of stand alone operation and are insensitive to the neighboring modules.
As disclosed in pending applications U.S. Ser. No. 563,317 filed Nov. 28, 1995, U.S. Ser. No. 563,873 filed Nov. 28, 1995, U.S. Ser. No. 565,189 filed Nov. 28, 1995, and U.S. Ser. No. 563,817 filed Nov. 28, 1995, it is possible to provide a system that treats all modules uniformly, regardless of specific functions (such as feeding, finishing, and marking) and to provide open configurations, that is, the number and sequence of modules is not fixed or limited. It is also possible, as described in the above referenced applications, to provide each module with a generic, uniformly described identification that is conveyed to the controller and the controller in turn composes the descriptions into a single machine description. Thus, no matter the geometric configuration of the connected modules, the machine operates to complete a given job. The configuration of the modules, feeder, marker, or finisher is not pertinent. There might not even be a marker present for a machine to operate and complete a job. In other words, there need not necessarily be only one marker or there need not be any marker and there may be any number of feeders or finishers to complete a given job requirement. Referring to the above referenced applications, it is also possible to provide a system that treats various machine modules uniformly but with the appropriate constraints. In particular, it is possible to define modules as transducers to accomplish coordination by finding a sequence of transfers between the various transducer inputs and outputs that is consistent with the constraints.
To achieve modular uniformity and provide open configurations as discussed above, in particular, to define modules as transducers and coordinate modules by finding a sequence of transfers between transducer inputs and outputs that is consistent with constraints, there is a need to be able to represent job requirements or "documents" in a manner that accommodates this uniformity. It is an object of the present invention, therefore, to provide a representation of a job requirement or "document" that is machine independent and print ready. It is another object of the present invention to provide an assembly tree representation to describe a document in a universal manner rather than describing the document in terms of actions to be taken.
There is also the need, however, to be able to describe a document in a universal description and yet provide a plan for an arbitrary document output terminal to produce a particular job requirement or document. Once a job requirement has been expressed in a universal manner independent of specific modules to achieve the result, ultimately the document or job requirement must be produced by specified modules.
It is therefore another object of the present invention to be able to map a universal representation of a job requirement along with an output terminal expressed in terms of components with capabilities onto the output terminals capabilities. Still another object of the present invention is to be able to convert an assembly tree representation of a job requirement into a production tree whose nodes represent output terminal capabilities and edges represent transfers of images, sheets, and compilations. Another object of the present invention is to selectively provide partial or untimed production trees to specify certain output terminal actions or selected diagnostic routines. Still another object of the present invention is to be able to define a document with an assembly tree component and a partial production tree component. Other advantages of the present invention will become apparent as the following description proceeds, and the features characterizing the invention will be pointed out with particularity in the claims annexed to and forming a part of this specification.